package com.carrental.finance.vo;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 发票视图对象
 */
@Data
public class InvoiceVO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    private Long id;

    /**
     * 发票号
     */
    private String invoiceNo;

    /**
     * 订单ID
     */
    private Long orderId;

    /**
     * 订单号
     */
    private String orderNo;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 用户姓名
     */
    private String userName;

    /**
     * 用户手机号
     */
    private String userPhone;

    /**
     * 发票金额
     */
    private BigDecimal amount;

    /**
     * 发票类型（1-普通发票，2-增值税专用发票）
     */
    private Integer invoiceType;

    /**
     * 发票类型名称
     */
    private String invoiceTypeName;

    /**
     * 发票抬头
     */
    private String title;

    /**
     * 纳税人识别号
     */
    private String taxNumber;

    /**
     * 发票内容
     */
    private String content;

    /**
     * 发票状态（1-待开具，2-已开具，3-已作废）
     */
    private Integer status;

    /**
     * 发票状态名称
     */
    private String statusName;

    /**
     * 开票时间
     */
    private LocalDateTime invoiceTime;

    /**
     * 电子发票URL
     */
    private String invoiceUrl;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
} 